--
-- PostgreSQL database cluster dump
--

\connect postgres

SET client_encoding = 'UTF8';
SET standard_conforming_strings = off;
SET escape_string_warning = off;

--
-- Roles
--

CREATE ROLE postgres;
ALTER ROLE postgres WITH SUPERUSER INHERIT CREATEROLE CREATEDB LOGIN PASSWORD 'md59c98ee98160e1dce709959e010e7f974';






--
-- Database creation
--

CREATE DATABASE "MetodosDB" WITH TEMPLATE = template0 OWNER = postgres;
REVOKE ALL ON DATABASE template1 FROM PUBLIC;
REVOKE ALL ON DATABASE template1 FROM postgres;
GRANT ALL ON DATABASE template1 TO postgres;
GRANT CONNECT ON DATABASE template1 TO PUBLIC;


\connect "MetodosDB"

--
-- PostgreSQL database dump
--

SET statement_timeout = 0;
SET client_encoding = 'UTF8';
SET standard_conforming_strings = off;
SET check_function_bodies = false;
SET client_min_messages = warning;
SET escape_string_warning = off;

--
-- Name: BD_Operativa; Type: SCHEMA; Schema: -; Owner: postgres
--

CREATE SCHEMA "BD_Operativa";


ALTER SCHEMA "BD_Operativa" OWNER TO postgres;

--
-- Name: Prueba; Type: SCHEMA; Schema: -; Owner: postgres
--

CREATE SCHEMA "Prueba";


ALTER SCHEMA "Prueba" OWNER TO postgres;

--
-- Name: plpgsql; Type: PROCEDURAL LANGUAGE; Schema: -; Owner: postgres
--

CREATE OR REPLACE PROCEDURAL LANGUAGE plpgsql;


ALTER PROCEDURAL LANGUAGE plpgsql OWNER TO postgres;

SET search_path = "BD_Operativa", pg_catalog;

SET default_tablespace = '';

SET default_with_oids = false;

--
-- Name: categoria; Type: TABLE; Schema: BD_Operativa; Owner: postgres; Tablespace: 
--

CREATE TABLE categoria (
    id integer NOT NULL,
    nombre character varying(30) NOT NULL,
    limite_inferior_edad integer NOT NULL,
    limite_superior_edad integer NOT NULL,
    importe integer
);


ALTER TABLE "BD_Operativa".categoria OWNER TO postgres;

--
-- Name: TABLE categoria; Type: COMMENT; Schema: BD_Operativa; Owner: postgres
--

COMMENT ON TABLE categoria IS 'categorías que puede tener un socio';


--
-- Name: COLUMN categoria.importe; Type: COMMENT; Schema: BD_Operativa; Owner: postgres
--

COMMENT ON COLUMN categoria.importe IS 'valor de la categoria';


--
-- Name: profesor; Type: TABLE; Schema: BD_Operativa; Owner: postgres; Tablespace: 
--

CREATE TABLE profesor (
    id integer NOT NULL,
    nombre character varying(30) NOT NULL,
    apellido character varying(30) NOT NULL,
    sueldo_fijo integer
);


ALTER TABLE "BD_Operativa".profesor OWNER TO postgres;

--
-- Name: TABLE profesor; Type: COMMENT; Schema: BD_Operativa; Owner: postgres
--

COMMENT ON TABLE profesor IS 'profesor de servicio adicional';


--
-- Name: servicio_adicional; Type: TABLE; Schema: BD_Operativa; Owner: postgres; Tablespace: 
--

CREATE TABLE servicio_adicional (
    id integer NOT NULL,
    nombre character varying(30) NOT NULL,
    importe_menor integer,
    importe_cadete integer,
    importe_mayor integer,
    importe_vitalicio integer,
    profesor_titular_id integer
);


ALTER TABLE "BD_Operativa".servicio_adicional OWNER TO postgres;

--
-- Name: TABLE servicio_adicional; Type: COMMENT; Schema: BD_Operativa; Owner: postgres
--

COMMENT ON TABLE servicio_adicional IS 'servicios adicionales a los que puede acceder un socio';


--
-- Name: COLUMN servicio_adicional.profesor_titular_id; Type: COMMENT; Schema: BD_Operativa; Owner: postgres
--

COMMENT ON COLUMN servicio_adicional.profesor_titular_id IS 'foranea 1 -n a profesores';


--
-- Name: servicio_adicional_profesor; Type: TABLE; Schema: BD_Operativa; Owner: postgres; Tablespace: 
--

CREATE TABLE servicio_adicional_profesor (
    id integer NOT NULL,
    servicio_adicional_id integer NOT NULL,
    profesor_id integer NOT NULL
);


ALTER TABLE "BD_Operativa".servicio_adicional_profesor OWNER TO postgres;

--
-- Name: TABLE servicio_adicional_profesor; Type: COMMENT; Schema: BD_Operativa; Owner: postgres
--

COMMENT ON TABLE servicio_adicional_profesor IS 'tabla intermedia relacion n-m profesores adjuntos / servicios adicionales';


--
-- Name: socio; Type: TABLE; Schema: BD_Operativa; Owner: postgres; Tablespace: 
--

CREATE TABLE socio (
    id integer NOT NULL,
    nombre character varying(30) NOT NULL,
    apellido character varying(30) NOT NULL,
    domicilio character varying(50),
    domicilio_cobro character varying(50),
    tipo_documento_id integer NOT NULL,
    numero_documento integer NOT NULL,
    zona integer NOT NULL,
    categoria_id integer NOT NULL,
    fecha_nacimiento date NOT NULL
);


ALTER TABLE "BD_Operativa".socio OWNER TO postgres;

--
-- Name: TABLE socio; Type: COMMENT; Schema: BD_Operativa; Owner: postgres
--

COMMENT ON TABLE socio IS 'Socio del club';


--
-- Name: socio_servicio_adicional; Type: TABLE; Schema: BD_Operativa; Owner: postgres; Tablespace: 
--

CREATE TABLE socio_servicio_adicional (
    id integer NOT NULL,
    socio_id integer NOT NULL,
    servicio_adicional_id integer NOT NULL
);


ALTER TABLE "BD_Operativa".socio_servicio_adicional OWNER TO postgres;

--
-- Name: TABLE socio_servicio_adicional; Type: COMMENT; Schema: BD_Operativa; Owner: postgres
--

COMMENT ON TABLE socio_servicio_adicional IS 'tabla intermedia relacion m-n socio/servicio';


--
-- Name: tipo_documento; Type: TABLE; Schema: BD_Operativa; Owner: postgres; Tablespace: 
--

CREATE TABLE tipo_documento (
    id integer NOT NULL,
    nombre character varying(30) NOT NULL
);


ALTER TABLE "BD_Operativa".tipo_documento OWNER TO postgres;

--
-- Name: TABLE tipo_documento; Type: COMMENT; Schema: BD_Operativa; Owner: postgres
--

COMMENT ON TABLE tipo_documento IS 'tipos validos de documento de socios';


SET search_path = "Prueba", pg_catalog;

--
-- Name: persona; Type: TABLE; Schema: Prueba; Owner: postgres; Tablespace: 
--

CREATE TABLE persona (
    id integer NOT NULL,
    nombre character varying(32) NOT NULL,
    dni integer NOT NULL
);


ALTER TABLE "Prueba".persona OWNER TO postgres;

SET search_path = "BD_Operativa", pg_catalog;

--
-- Data for Name: categoria; Type: TABLE DATA; Schema: BD_Operativa; Owner: postgres
--

COPY categoria (id, nombre, limite_inferior_edad, limite_superior_edad, importe) FROM stdin;
1	menor	0	14	50
2	cadete	15	20	70
3	mayor	21	99	100
4	vitalicio	0	99	0
\.


--
-- Data for Name: profesor; Type: TABLE DATA; Schema: BD_Operativa; Owner: postgres
--

COPY profesor (id, nombre, apellido, sueldo_fijo) FROM stdin;
1	Manuel	Moreira	3000
2	José	Argento	2500
3	Mónica	Argento	2500
4	Federico	Argento	1500
\.


--
-- Data for Name: servicio_adicional; Type: TABLE DATA; Schema: BD_Operativa; Owner: postgres
--

COPY servicio_adicional (id, nombre, importe_menor, importe_cadete, importe_mayor, importe_vitalicio, profesor_titular_id) FROM stdin;
1	Fútbol	100	120	150	100	4
2	Basquet	100	120	150	100	4
3	Natación	130	150	180	130	4
\.


--
-- Data for Name: servicio_adicional_profesor; Type: TABLE DATA; Schema: BD_Operativa; Owner: postgres
--

COPY servicio_adicional_profesor (id, servicio_adicional_id, profesor_id) FROM stdin;
1	1	1
2	1	2
3	1	3
4	2	1
\.


--
-- Data for Name: socio; Type: TABLE DATA; Schema: BD_Operativa; Owner: postgres
--

COPY socio (id, nombre, apellido, domicilio, domicilio_cobro, tipo_documento_id, numero_documento, zona, categoria_id, fecha_nacimiento) FROM stdin;
1	Andrés	Fernandez	Av Freyre 1456	Av Freyre 1456	1	31565089	1	3	1985-05-18
2	Emanuel	Herrmann	La Rioja 3107 P:1 D:d		1	34226385	0	3	1989-01-09
3	Antonio	Fernandez	San Martin 1234	Peatonal 1234	1	12345678	3	3	1969-04-12
4	Amelio	Galarza	9 de Julio 4567	9 de julio 4567	1	39456789	2	2	1996-06-03
5	Anastacio	Fernandino	4 de Enero 7888	4 de Enero 7888	1	34567890	5	3	1989-12-12
6	Natalio	Fermento	San Juan 2235	San Juan 2235	2	5598345	0	4	1948-04-23
\.


--
-- Data for Name: socio_servicio_adicional; Type: TABLE DATA; Schema: BD_Operativa; Owner: postgres
--

COPY socio_servicio_adicional (id, socio_id, servicio_adicional_id) FROM stdin;
1	1	1
2	2	3
3	2	1
\.


--
-- Data for Name: tipo_documento; Type: TABLE DATA; Schema: BD_Operativa; Owner: postgres
--

COPY tipo_documento (id, nombre) FROM stdin;
1	DNI
2	LE
3	LC
\.


SET search_path = "Prueba", pg_catalog;

--
-- Data for Name: persona; Type: TABLE DATA; Schema: Prueba; Owner: postgres
--

COPY persona (id, nombre, dni) FROM stdin;
1	hermengildo	33931842
2	anacleta	33931848
\.


SET search_path = "BD_Operativa", pg_catalog;

--
-- Name: Socio_pkey; Type: CONSTRAINT; Schema: BD_Operativa; Owner: postgres; Tablespace: 
--

ALTER TABLE ONLY socio
    ADD CONSTRAINT "Socio_pkey" PRIMARY KEY (id);


--
-- Name: categoria_pkey; Type: CONSTRAINT; Schema: BD_Operativa; Owner: postgres; Tablespace: 
--

ALTER TABLE ONLY categoria
    ADD CONSTRAINT categoria_pkey PRIMARY KEY (id);


--
-- Name: profesor_pkey; Type: CONSTRAINT; Schema: BD_Operativa; Owner: postgres; Tablespace: 
--

ALTER TABLE ONLY profesor
    ADD CONSTRAINT profesor_pkey PRIMARY KEY (id);


--
-- Name: servicio_adicional_pkey; Type: CONSTRAINT; Schema: BD_Operativa; Owner: postgres; Tablespace: 
--

ALTER TABLE ONLY servicio_adicional
    ADD CONSTRAINT servicio_adicional_pkey PRIMARY KEY (id);


--
-- Name: servicio_adicional_profesor_pkey; Type: CONSTRAINT; Schema: BD_Operativa; Owner: postgres; Tablespace: 
--

ALTER TABLE ONLY servicio_adicional_profesor
    ADD CONSTRAINT servicio_adicional_profesor_pkey PRIMARY KEY (id);


--
-- Name: servicio_adicional_profesor_uk; Type: CONSTRAINT; Schema: BD_Operativa; Owner: postgres; Tablespace: 
--

ALTER TABLE ONLY servicio_adicional_profesor
    ADD CONSTRAINT servicio_adicional_profesor_uk UNIQUE (servicio_adicional_id, profesor_id);


--
-- Name: socio_servicio_adicional_pkey; Type: CONSTRAINT; Schema: BD_Operativa; Owner: postgres; Tablespace: 
--

ALTER TABLE ONLY socio_servicio_adicional
    ADD CONSTRAINT socio_servicio_adicional_pkey PRIMARY KEY (id);


--
-- Name: socio_servicio_adicional_uk; Type: CONSTRAINT; Schema: BD_Operativa; Owner: postgres; Tablespace: 
--

ALTER TABLE ONLY socio_servicio_adicional
    ADD CONSTRAINT socio_servicio_adicional_uk UNIQUE (socio_id, servicio_adicional_id);


--
-- Name: tipo_documento_pkey; Type: CONSTRAINT; Schema: BD_Operativa; Owner: postgres; Tablespace: 
--

ALTER TABLE ONLY tipo_documento
    ADD CONSTRAINT tipo_documento_pkey PRIMARY KEY (id);


SET search_path = "Prueba", pg_catalog;

--
-- Name: persona_dni_key; Type: CONSTRAINT; Schema: Prueba; Owner: postgres; Tablespace: 
--

ALTER TABLE ONLY persona
    ADD CONSTRAINT persona_dni_key UNIQUE (dni);


--
-- Name: persona_pkey; Type: CONSTRAINT; Schema: Prueba; Owner: postgres; Tablespace: 
--

ALTER TABLE ONLY persona
    ADD CONSTRAINT persona_pkey PRIMARY KEY (id);


SET search_path = "BD_Operativa", pg_catalog;

--
-- Name: categoria_socio_fk; Type: FK CONSTRAINT; Schema: BD_Operativa; Owner: postgres
--

ALTER TABLE ONLY socio
    ADD CONSTRAINT categoria_socio_fk FOREIGN KEY (categoria_id) REFERENCES categoria(id) ON UPDATE CASCADE;


--
-- Name: servicio_adicional_profesor_fk; Type: FK CONSTRAINT; Schema: BD_Operativa; Owner: postgres
--

ALTER TABLE ONLY servicio_adicional_profesor
    ADD CONSTRAINT servicio_adicional_profesor_fk FOREIGN KEY (profesor_id) REFERENCES profesor(id) ON UPDATE CASCADE;


--
-- Name: servicio_adicional_profesor_profesor_fk; Type: FK CONSTRAINT; Schema: BD_Operativa; Owner: postgres
--

ALTER TABLE ONLY servicio_adicional_profesor
    ADD CONSTRAINT servicio_adicional_profesor_profesor_fk FOREIGN KEY (profesor_id) REFERENCES profesor(id) ON UPDATE CASCADE;


--
-- Name: servicio_adicional_profesor_servicio_adicional_fk; Type: FK CONSTRAINT; Schema: BD_Operativa; Owner: postgres
--

ALTER TABLE ONLY servicio_adicional_profesor
    ADD CONSTRAINT servicio_adicional_profesor_servicio_adicional_fk FOREIGN KEY (servicio_adicional_id) REFERENCES servicio_adicional(id) ON UPDATE CASCADE;


--
-- Name: socio_servicio_adicional_servicio_adicional_fk; Type: FK CONSTRAINT; Schema: BD_Operativa; Owner: postgres
--

ALTER TABLE ONLY socio_servicio_adicional
    ADD CONSTRAINT socio_servicio_adicional_servicio_adicional_fk FOREIGN KEY (servicio_adicional_id) REFERENCES servicio_adicional(id) ON UPDATE CASCADE;


--
-- Name: socio_servicio_adicional_socio_fk; Type: FK CONSTRAINT; Schema: BD_Operativa; Owner: postgres
--

ALTER TABLE ONLY socio_servicio_adicional
    ADD CONSTRAINT socio_servicio_adicional_socio_fk FOREIGN KEY (socio_id) REFERENCES socio(id) ON UPDATE CASCADE;


--
-- Name: socio_tipo_documento_fk; Type: FK CONSTRAINT; Schema: BD_Operativa; Owner: postgres
--

ALTER TABLE ONLY socio
    ADD CONSTRAINT socio_tipo_documento_fk FOREIGN KEY (tipo_documento_id) REFERENCES tipo_documento(id) ON UPDATE CASCADE;


--
-- PostgreSQL database dump complete
--

\connect template1

--
-- PostgreSQL database dump
--

SET statement_timeout = 0;
SET client_encoding = 'UTF8';
SET standard_conforming_strings = off;
SET check_function_bodies = false;
SET client_min_messages = warning;
SET escape_string_warning = off;

--
-- Name: template1; Type: COMMENT; Schema: -; Owner: postgres
--

COMMENT ON DATABASE template1 IS 'default template database';


--
-- Name: plpgsql; Type: PROCEDURAL LANGUAGE; Schema: -; Owner: postgres
--

CREATE OR REPLACE PROCEDURAL LANGUAGE plpgsql;


ALTER PROCEDURAL LANGUAGE plpgsql OWNER TO postgres;

--
-- Name: public; Type: ACL; Schema: -; Owner: postgres
--

REVOKE ALL ON SCHEMA public FROM PUBLIC;
REVOKE ALL ON SCHEMA public FROM postgres;
GRANT ALL ON SCHEMA public TO postgres;
GRANT ALL ON SCHEMA public TO PUBLIC;


--
-- PostgreSQL database dump complete
--

--
-- PostgreSQL database cluster dump complete
--

